package com.regex.web.entity.gen;

import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.regex.web.common.excel.annotation.ExcelField;
import com.regex.web.entity.StrIdBaseEntity;

/**
 * <p>
 * 
 * </p>
 *
 * @author ocean.ma
 * @since 2019-07-23
 */
@TableName("gen_table_info")
public class TableInfoDTO extends StrIdBaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 数据库id
     */
    @TableField("db_id")
    private String dbId;

    /**
     * 表名
     */
    @TableField("table_name")
    private String tableName;

    /**
     * 表id类型
     */
    @TableField("table_id_type")
    private String tableIdType;

    /**
     * 超entity
     */
    @TableField("super_entity")
    private String superEntity;

    /**
     * 超service
     */
    @TableField("super_service")
    private String superService;

    /**
     * 超impl
     */
    @TableField("super_service_impl")
    private String superServiceImpl;

    /**
     * 包名
     */
    @TableField("package_name")
    private String packageName;

    /**
     * 前缀
     */
    @TableField("prefix")
    private String prefix;

    /**
     * 作者
     */
    @TableField("author")
    private String author;

    /**
     * 输出地址
     */
    @TableField("out_put_dir")
    private String outPutDir;

    /**
     * 公共字段
     */
    @TableField("common_columns")
    private String commonColumns;

    /**
     * 父包
     */
    @TableField("parent_package")
    private String parentPackage;

    /**
     * 实体包名称
     */
    @TableField("entity_package")
    private String entityPackage;

    /**
     * service包名
     */
    @TableField("service_package")
    private String servicePackage;

    /**
     * impl包名
     */
    @TableField("service_impl_package")
    private String serviceImplPackage;

    /**
     * dao包名
     */
    @TableField("mapper_package")
    private String mapperPackage;

    /**
     * xml包名
     */
    @TableField("xml_package")
    private String xmlPackage;

    /**
     * controller包名
     */
    @TableField("controller_package")
    private String controllerPackage;
    
    /**
     * id 字段名称
     */
    @TableField("id_column")
    private String idColumn;
    /**
     * 动态数据源名称
     */
    @TableField("dynamic_datasource")
    private String dynamicDatasource;

    
    public String getDynamicDatasource() {
		return dynamicDatasource;
	}

	public void setDynamicDatasource(String dynamicDatasource) {
		this.dynamicDatasource = dynamicDatasource;
	}

	public String getIdColumn() {
		return idColumn;
	}

	public void setIdColumn(String idColumn) {
		this.idColumn = idColumn;
	}

	@ExcelField(title="数据库id", type=1, align=2 , sort=1)
    public String getDbId() {
        return dbId;
    }

    public void setDbId(String dbId) {
        this.dbId = dbId;
    }
    
    @ExcelField(title="表名", type=1, align=2 , sort=2)
    public String getTableName() {
        return tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }
    
    @ExcelField(title="表id类型", type=1, align=2 , sort=3)
    public String getTableIdType() {
        return tableIdType;
    }

    public void setTableIdType(String tableIdType) {
        this.tableIdType = tableIdType;
    }
    
    @ExcelField(title="超entity", type=1, align=2 , sort=4)
    public String getSuperEntity() {
        return superEntity;
    }

    public void setSuperEntity(String superEntity) {
        this.superEntity = superEntity;
    }
    
    @ExcelField(title="超service", type=1, align=2 , sort=5)
    public String getSuperService() {
        return superService;
    }

    public void setSuperService(String superService) {
        this.superService = superService;
    }
    
    @ExcelField(title="超impl", type=1, align=2 , sort=6)
    public String getSuperServiceImpl() {
        return superServiceImpl;
    }

    public void setSuperServiceImpl(String superServiceImpl) {
        this.superServiceImpl = superServiceImpl;
    }
    
    @ExcelField(title="包名", type=1, align=2 , sort=7)
    public String getPackageName() {
        return packageName;
    }

    public void setPackageName(String packageName) {
        this.packageName = packageName;
    }
    
    @ExcelField(title="前缀", type=1, align=2 , sort=8)
    public String getPrefix() {
        return prefix;
    }

    public void setPrefix(String prefix) {
        this.prefix = prefix;
    }
    
    @ExcelField(title="作者", type=1, align=2 , sort=9)
    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }
    
    @ExcelField(title="输出地址", type=1, align=2 , sort=10)
    public String getOutPutDir() {
        return outPutDir;
    }

    public void setOutPutDir(String outPutDir) {
        this.outPutDir = outPutDir;
    }
    
    @ExcelField(title="公共字段", type=1, align=2 , sort=11)
    public String getCommonColumns() {
        return commonColumns;
    }

    public void setCommonColumns(String commonColumns) {
        this.commonColumns = commonColumns;
    }
    
    @ExcelField(title="父包", type=1, align=2 , sort=12)
    public String getParentPackage() {
        return parentPackage;
    }

    public void setParentPackage(String parentPackage) {
        this.parentPackage = parentPackage;
    }
    
    @ExcelField(title="实体包名称", type=1, align=2 , sort=13)
    public String getEntityPackage() {
        return entityPackage;
    }

    public void setEntityPackage(String entityPackage) {
        this.entityPackage = entityPackage;
    }
    
    @ExcelField(title="service包名", type=1, align=2 , sort=14)
    public String getServicePackage() {
        return servicePackage;
    }

    public void setServicePackage(String servicePackage) {
        this.servicePackage = servicePackage;
    }
    
    @ExcelField(title="impl包名", type=1, align=2 , sort=15)
    public String getServiceImplPackage() {
        return serviceImplPackage;
    }

    public void setServiceImplPackage(String serviceImplPackage) {
        this.serviceImplPackage = serviceImplPackage;
    }
    
    @ExcelField(title="dao包名", type=1, align=2 , sort=16)
    public String getMapperPackage() {
        return mapperPackage;
    }

    public void setMapperPackage(String mapperPackage) {
        this.mapperPackage = mapperPackage;
    }
    
    @ExcelField(title="xml包名", type=1, align=2 , sort=17)
    public String getXmlPackage() {
        return xmlPackage;
    }

    public void setXmlPackage(String xmlPackage) {
        this.xmlPackage = xmlPackage;
    }
    
    @ExcelField(title="controller包名", type=1, align=2 , sort=18)
    public String getControllerPackage() {
        return controllerPackage;
    }

    public void setControllerPackage(String controllerPackage) {
        this.controllerPackage = controllerPackage;
    }

    @Override
    protected Serializable pkVal() {
        return super.pkVal();
    }

    @Override
    public String toString() {
        return "TableInfoDTO{" +
        "dbId=" + dbId +
        ", tableName=" + tableName +
        ", tableIdType=" + tableIdType +
        ", superEntity=" + superEntity +
        ", superService=" + superService +
        ", superServiceImpl=" + superServiceImpl +
        ", packageName=" + packageName +
        ", prefix=" + prefix +
        ", author=" + author +
        ", outPutDir=" + outPutDir +
        ", commonColumns=" + commonColumns +
        ", parentPackage=" + parentPackage +
        ", entityPackage=" + entityPackage +
        ", servicePackage=" + servicePackage +
        ", serviceImplPackage=" + serviceImplPackage +
        ", mapperPackage=" + mapperPackage +
        ", xmlPackage=" + xmlPackage +
        ", controllerPackage=" + controllerPackage +
        "}";
    }
}
